package com.sxj.corejava.code01;

/**
 * @author 石小俊
 * @date 2025年01月02日
 */
public class Test03_基本数据类型 {
    public static void main(String[] args) {
        // byte值的范围:[-128,127]
        byte b1 = -128;
        byte b2 = 127;
        // byte b3 = 128; // 超出范围则报错

        // short值的范围:[-32768,32767]
//        System.out.println(Math.pow(2,15));
        short s1 = -32768;
        short s2 = 32767;
        // short s3 = 32768; // 超出范围则报错

        // System.out.println(Math.pow(2,31));
        // 在Java中,所有整数默认都是通过int来处理
        System.out.println(32768);
        int i1 = 1;
        int i2 = -1;

        // long类型的值必须以L或者l结尾
        long l1 = 1000L;
        long l2 = -1000l;

        // 在Java中,所有浮点数(小数)默认都是通过double来处理
        // 定义float类型的值,必须以F或者f结尾
        float f1 = 3.14f;
        float f2 = -3.14F;

        double d1 = 3.14;
        double d2 = -3.14;

        char c1 = 'A';
        char c2 = '1';
        char c3 = '中';
        char c4 = ';';
        char c5 = '\n';
        System.out.print("Hello");
        System.out.print(c5);
        System.out.println("World");

        char c6 = '\u0061';
        System.out.println(c6);

        // 布尔类型的值只有两种:true和false,表示真和假
        boolean flag = true;
        boolean flag2 = false;

        int age = 20;
        System.out.println(age < 18);

        // 字符串类型:String,是属于引用数据类型
        // String 变量名 = "变量值";
        String name = "张三";
        System.out.println(name);
        // 任意类型与字符串通过+号进行运算时都是返回一个字符串类型
        // 其值是将所有字符拼接在一起
        System.out.println("我是" + name + ",今年" + age + "岁");
        int num1 = 1, num2 = 2;
        System.out.println(num1 + num2);
        String num3 = "1", num4 = "2";
        System.out.println(num3 + num4);
    }
}
